Hvad betyder ^ ?

Tags:    delphi

Sad lige og læste en gammel tråd her på udv og faldt lige over

var
i: ^integer;

Hvad gør ^'en?








-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GED d- s: a--- C++ W++ w PS X+ tv+ b D G e- h! !r z--
------END GEEK CODE BLOCK------



8 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Det betyder at det er en pointer til en integer, altså den peger på et sted i hukommelsen, hvor der ligger et heltal (integer).

1101110100010110000101000001

Husk, det kræver 42 muskler at se sur ud, det kræver kun 6 at slå idioten ned...



Her er et eksempel:
Fold kodeboks ind/udKode 


MH.

The-Freak

Livet er for kort til at kede sig.



Hvad er så forskellen på din kode og så det her

Fold kodeboks ind/udKode 









-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GED d- s: a--- C++ W++ w PS X+ tv+ b D G e- h! !r z--
------END GEEK CODE BLOCK------


Som sagt betyder ^ foran en variabel type at det er en pointer, så den skal pege på noget. Derfor burde min teoretisk set være hurtigere da værdien ikke skal kopieres ved min da det bare er en pointer ;).

MH.

The-Freak

Livet er for kort til at kede sig.



Som sagt betyder ^ foran en variabel type at det er en pointer, så den skal pege på noget. Derfor burde min teoretisk set være hurtigere da værdien ikke skal kopieres ved min da det bare er en pointer ;).


Normalt er heltal repræsenteret ved fire bytes, det samme som en pointer på x86-maskiner, så faktisk er din implementation, med pointers, nok langsommere, idet den skal dereferere en pointer.





Det betyder at du laver en pointer til en integer

MH.

The-Freak

Livet er for kort til at kede sig.



Her er et eksempel:
Fold kodeboks ind/udKode 


MH.

The-Freak

Livet er for kort til at kede sig.

[Redigeret d. 14/12-04 15:28:30 af The-Freak]

[Redigeret d. 14/12-04 15:28:58 af The-Freak]



Her er et eksempel:
Fold kodeboks ind/udKode 


MH.

The-Freak

Livet er for kort til at kede sig.



Hvad er så forskellen på din kode og så det her

Fold kodeboks ind/udKode 









-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GED d- s: a--- C++ W++ w PS X+ tv+ b D G e- h! !r z--
------END GEEK CODE BLOCK------



Som sagt betyder ^ foran en variabel type at det er en pointer, så den skal pege på noget. Derfor burde min teoretisk set være hurtigere da værdien ikke skal kopieres ved min da det bare er en pointer ;).

Normalt er heltal repræsenteret ved fire bytes, det samme som en pointer på x86-maskiner, så faktisk er din implementation, med pointers, nok langsommere, idet den skal dereferere en pointer.


Ja, det var det jeg lige kom i tanke om ;)...

MH.

The-Freak

Livet er for kort til at kede sig.




Har lige lavet et par tests, og det kan iflg. dem ikke betale sig at bruge en pointer medmindre man bruger noget der er over den alm integer's størrelse...

MH.

The-Freak

Livet er for kort til at kede sig.



t